Page({
  data: {
    today: '', // 用于日期选择器的默认显示和起始日期
    currentTodo: {
      title: '',       // 事件标题
      deadline: '',    // 截止日期
      complete: false, // 完成状态（默认未完成）
      detial_text: '', // 事件描述
      text: '待完成'   // 状态文本（默认待完成）
    }
  },

  onLoad() {
    // 设置今天日期（格式：YYYY-MM-DD），作为日期选择器的起始时间
    const today = new Date().toISOString().split('T')[0];
    this.setData({
      today
    });

    wx.setNavigationBarTitle({
      title: '添加事件'
    });
  },

  // 标题输入处理
  handleTitleInput(e) {
    this.setData({
      'currentTodo.title': e.detail.value
    });
  },

  // 截止日期选择处理
  handleDeadlineChange(e) {
    this.setData({
      'currentTodo.deadline': e.detail.value
    });
  },

  // 完成状态切换处理
  handleStatusChange(e) {
    const isComplete = e.detail.value;
    this.setData({
      'currentTodo.complete': isComplete,
      // 同步更新状态文本
      'currentTodo.text': isComplete ? '已完成' : '待完成'
    });
  },

  // 事件描述输入处理
  handleDescInput(e) {
    this.setData({
      'currentTodo.detial_text': e.detail.value
    });
  },

  // 取消添加，返回上一页
  Cancel() {
    wx.navigateBack();
  },

  // 添加待办事件
  Add() {
    const { currentTodo } = this.data;

    // 验证标题不为空
    if (!currentTodo.title || currentTodo.title.trim() === '') {
      wx.showToast({
        title: '请输入事件标题',
        icon: 'none'
      });
      return;
    }

    // 生成唯一ID（基于时间戳确保唯一性）
    const todoId = Date.now();

    // 构造新的待办对象
    const newTodo = {
      id: todoId, // 唯一标识
      ...currentTodo,
      title: currentTodo.title.trim() // 去除首尾空格
    };

    // 从本地存储获取现有列表
    const allTodos = wx.getStorageSync('todoArray') || [];
    // 添加新待办并保存
    allTodos.push(newTodo);
    wx.setStorageSync('todoArray', allTodos);

    // 提示成功并返回上一页
    wx.showToast({
      title: '添加成功',
      icon: 'success',
      duration: 1000
    });

    setTimeout(() => {
      wx.navigateBack();
    }, 1000);
  }
});